package com.siao.net.socket;

/**
 * @author SiaoLeon
 * 连接处理接口
 */
public interface IConnectionHandler {

	/**
	 * 连接成功
	 * @param connection
	 */
	void onConnected(Connection connection);

	/**
	 * 连接失败
	 * @param connection
	 */
	void onConnectFailed(Connection connection);

	/**
	 * 发送数据
	 * @param connection
	 * @param data
	 */
	void onSend(Connection connection, IDataPack data);

	/**
	 * 接收数据
	 * @param connection
	 * @param data
	 */
	void onReceive(Connection connection, Object data);

	/**
	 * 连接关闭
	 * @param connection
	 */
	void onClose(Connection connection);

	/**
	 * 连接断开
	 * @param connection
	 */
	void onDisconnect(Connection connection);

}
